import { defineStore } from 'pinia' // 导入 pinia 中的功能模块

const actionDataStore = defineStore('main', {
  // pinia 状态管理的数据，通过箭头函数返回一个对象
  // 相当于 vue 中的 data 数据
  state: () => {
    return {
      actionDataId: '',
      actionData: {},
      actionTemplateId: '',
      cachedPages: [],
      childCurrentDetailId: ''
    }
  },



  // 相当于 vue 中的 methods 方法
  actions: {
    // 1、count 加法方法
    setActionData(id, obj) {
      this.actionDataId = id
      this.actionData = obj
    },
    setActionTemplateId(id) {
      this.actionTemplateId = id
    },
    addCachedPage(name) {
      let flag = this.cachedPages.findIndex(item=>{
        return item == name
      })
      flag == -1 && this.cachedPages.push(name)
    },
    cleanCachedPage(name) {
      this.cachedPages = []
    },
    setChildCurrentDetailId(id) {
      this.childCurrentDetailId = id
    }
  }
})

// 导出容器
export {
  actionDataStore
}
